package com.zhaoxi.project.md.service.impl;


import com.zhaoxi.common.utils.DateUtils;
import com.zhaoxi.common.utils.SecurityUtils;
import com.zhaoxi.project.md.domain.Ureport2Temp;
import com.zhaoxi.project.md.mapper.Ureport2TempMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * ureport2模板管理Service业务层处理
 *
 * @author ruoyi
 * @date 2022-01-21
 */
@Service
@Transactional
public class Ureport2TempServiceImpl
{
	@Autowired
	private Ureport2TempMapper ureport2TempMapper;

	/**
	 * 查询ureport2模板管理
	 *
	 * @param id ureport2模板管理主键
	 * @return ureport2模板管理
	 */
	
	public Ureport2Temp selectUreport2TempById(Long id)
	{
		return ureport2TempMapper.selectUreport2TempById(id);
	}

	/**
	 * 查询ureport2模板管理列表
	 *
	 * @param ureport2Temp ureport2模板管理
	 * @return ureport2模板管理
	 */
	
	public List<Ureport2Temp> selectUreport2TempList(Ureport2Temp ureport2Temp)
	{
		return ureport2TempMapper.selectUreport2TempList(ureport2Temp);
	}

	/**
	 * 新增ureport2模板管理
	 *
	 * @param ureport2Temp ureport2模板管理
	 * @return 结果
	 */
	
	public int insertUreport2Temp(Ureport2Temp ureport2Temp)
	{

		ureport2Temp.setUserId(SecurityUtils.getUserId());
		ureport2Temp.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
		ureport2Temp.setCreateTime(DateUtils.getNowDate());
		return ureport2TempMapper.insertUreport2Temp(ureport2Temp);
	}

	/**
	 * 修改ureport2模板管理
	 *
	 * @param ureport2Temp ureport2模板管理
	 * @return 结果
	 */
	
	public int updateUreport2Temp(Ureport2Temp ureport2Temp)
	{
		ureport2Temp.setUserId(SecurityUtils.getUserId());
		ureport2Temp.setUpdateBy(SecurityUtils.getLoginUser().getUser().getNickName());
		ureport2Temp.setUpdateTime(DateUtils.getNowDate());
		return ureport2TempMapper.updateUreport2Temp(ureport2Temp);
	}

	/**
	 * 批量删除ureport2模板管理
	 *
	 * @param ids 需要删除的ureport2模板管理主键
	 * @return 结果
	 */
	
	public int deleteUreport2TempByIds(Long[] ids)
	{
		return ureport2TempMapper.deleteUreport2TempByIds(ids);
	}

	/**
	 * 删除ureport2模板管理信息
	 *
	 * @param id ureport2模板管理主键
	 * @return 结果
	 */
	
	public int deleteUreport2TempById(Long id)
	{
		return ureport2TempMapper.deleteUreport2TempById(id);
	}

	/**
	 * 批量---逻辑删除
	 *
	 * @param ids 需要删除的ureport2模板管理ID
	 * @return 结果
	 */
	
	public int setDeleteByIds(Long[] ids)
	{
		Long userId = SecurityUtils.getUserId();
		String userNickName = SecurityUtils.getLoginUser().getUser().getNickName();
		return ureport2TempMapper.setDeleteByIds(ids,userId,userNickName);
	}

	/**
	 * 删除---逻辑删除
	 *
	 * @param id ureport2模板管理ID
	 * @return 结果
	 */
	
	public int setDeleteById(Long id)
	{
		Long userId = SecurityUtils.getUserId();
		String userNickName = SecurityUtils.getLoginUser().getUser().getNickName();
		return ureport2TempMapper.setDeleteById(id,userId,userNickName);
	}

	/**
	 * 根据code查询参数
	 * @param code
	 * @return
	 */
	public Ureport2Temp selectParamByCode(String code){
		return ureport2TempMapper.selectParamByCode(code);
	}

	/**
	 * 根据模板的存放路径查询唯一的模板信息
	 * @param fullPath
	 * @return
	 */
	public Ureport2Temp selectSignleByFullPath(String fullPath){
		return ureport2TempMapper.selectSignleByFullPath(fullPath);
	}
}
